1. Technical Field
The present invention relates to the field of computer systems. More particularly, embodiments of the present invention relate to a method and system for faster instance startup for computer systems having large resource configurations.
2. Background Art
With growing use of the Internet and use of information over the World Wide Web (WWW), the need for large memory components and large databases for storing large amount of information has increased and has become more prevalent. Starting up a database usually involves creating and initializing the database. A database system usually contains the configuration information, scripts and real-time data for transfer between the server and the client. This is true in general for any system that involves allocating and initializing a large number of subcomponents. Subcomponents may include resources such as memory and disk space which use a sequence of scripts to get initialized in order to become available to the user.
The time necessary to complete system allocation and initialization usually depends on several factors such as the actual size of the configuration information and scripts, the available resources in the system such as a processor or a virtual memory, and the network infrastructure. One approach to initializing a memory component (e.g., a buffer cache) in a database is to initialize the entire memory component before opening the database for use. However, as memory components increase in size, the amount of time required to initialize the entire memory component increases as well. For example, in some applications ultra-large buffer cache are used (e.g., 500 GB+) and as a result of using an ultra-large buffer cache, the amount of time required to initialize the entire buffer cache increases. As such, the time required to initialize the entire buffer cache (e.g., 500 GB+) at startup of the database can be of the order of minutes even in the absence of a need for recovery. The larger the initialization size of the buffer pool, the worse of an impact it has on the system.
Unfortunately there is no work around for a faster startup time for large memory components that requires complete initialization of the entire memory component prior to opening the database for use. As such, with the current system and in particular the initializing stage for starting up the system for a large memory component may take minutes to complete during which the system is unavailable for use. Hence, a need has risen to improve the startup time of a database with large memory components by improving the speed for their initialization process.